<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>jsx小练习</title>
  </head>
  <body>
    <!-- 准备好一个容器 -->
    <div id="test"></div>

    <!-- 引入react 核心库 -->
    <script
      type="text/javascript"
      src="../../react-js/react.development.js"
    ></script>
    <!-- 引入react-dom 用于支持react操作dom -->
    <script
      type="text/javascript"
      src="../../react-js/react-dom.development.js"
    ></script>
    <!-- 引入babel 用于jsx转为js -->
    <script type="text/javascript" src="../../react-js/babel.min.js"></script>

    <script type="text/babel">
      /*
            一定注意区分【js语句（代码）】与【js表达式】
                1.表达式：一个表达式会产生一个值，可以放在任何一个需要值的地方
                    例如：
                        （1）a
                        （2）a+b
                        （3）demo(1)
                         (4)arr.map()
                         (5)function test(){}

                2.语句（代码）
                    例如：
                        (1)if(){}
                        (2)for(){}
                        (3)switch(){case:xxxx}
      */
      // 模拟数据
      const data = ['react', 'vue', 'angular'];
      // 1.创建虚拟DOM
      const VDOM = (
        <div>
          <h1>前端js框架列表</h1>
          <ul>
            {data.map((item, index) => {
              return <li key={index}>{item}</li>;
            })}
          </ul>
        </div>
      );
      // 2.渲染虚拟DOM到页面
      ReactDOM.render(VDOM, document.getElementById('test'));
    </script>
  </body>
</html>
